1. Field of the Invention
The present invention relates generally to digital signal processors used for allocation of resources. More particularly, the present invention is a gateway that controls and allocates a single function for each digital signal processor in a flexible manner to implement a multi-function system for transmitting Time Division Multiplexed (TDM) telecommunications over a packet network.
2. Background Information
As telecommunication technology advances, the demand for cheaper, better, and more telecommunication services increases. In the past, separate telephone and facsimile lines were sufficient for a business. Today, separate telephone and facsimile lines are insufficient even for a residence. In today's society, businesses and residences need separate telephone, facsimile, and data lines just to keep up with technology.
Thus, as the demands for telecommunication services rise, so does the demand for more telecommunications lines. As society continues to become computer savvy, the demand for more telecommunication lines is becoming an increasing problem. In short, present day telecommunication demands are becoming harder to meet.
To meet some of society's needs, businesses and residences are turning to alternative telecommunication services, such as satellite services, instead of the traditional means, i.e., telephone lines. However, even these alternative telecommunication services are insufficient to meet society's needs. Telephone companies are running out of telephone numbers, modems are becoming outdated quicker than ever, and the demand for telecommunication services continues to rise with no end in sight.
One traditional way to improve telephone service has been through the use of Time Division Multiplexed (TDM) telephony networks. TDM is based on allocating a time slot for each channel connected to the system whether the user uses the allocated time slot or not. However, even with the improvements afforded by TDM technology, telephony systems are still expensive and cannot provide sufficient telecommunication services. As a result, there is a need to migrate from the traditional TDM telephony network towards a packet based network for carrying telecommunication information such as voice/fax/data information.
A packet system adds a header to the information payload to form an information packet, and sends the information packets to a desired location. The packets can vary in size or they may be a set size. If there is too much information to fit into one packet, the information is broken up into several packets with each packet having a header thereby allowing assembly into a coherent file later. At a minimum, the header indicates where the packet is being sent and the relative ordering of the packets. Once packets are received at the desired destination, the packets are then recombined in the proper order. Ideally, packet based systems are high density and low power.
The requirement to have high density and low power for the packet based network is complicated by the desire to have a flexible system that performs many different functions on a per channel basis. The goal is to have a system that can provide a wide variety of functions per channel. For instance, it is desirable to have a system that can be used with voice coders, fax modems, and data modems, as well as operating to accommodate different standards or versions.
The system uses a universal port to handle the different types of telecommunication information. In order to deliver the different telecommunication information, the universal port accommodates different functions on a per channel basis. To make such a system, digital signal processors (DSPs) are used for processing the different telecommunication information through multiple channels. One approach is the use of multi-function, multi-channel DSPs where all functions are available at any time on all DSP channels, i.e., all of the software for running the system is present on each DSP.
Referring to FIG. 1, a multi-function, multi-channel DSP system architecture is illustrated. According to this approach a universal port is implemented having all functions available at all times on a given DSP. As illustrated, the microprocessor 100 contains DSP control software 102 that controls which DSP function is running at any particular time, with all of the functions being available at all times on the DSP. In this example, the DSP 104 can run functional software to handle G.729A voice compression/decompression 106, fax traffic 108, G.723.1 voice compression/decompression 110, or modem traffic 112. Similarly, the DSP 114 can run functional software to handle G.723.1 voice compression/decompression 116, modem traffic 118, G.729A voice compression/decompression 120, or fax traffic 122.
In operation, information to and from physical devices, such as a modem 126, a telephone 128, and fax machine 130, pass through a TDM input 124 and the individual DSPs (104, 114) for processing. The TDM input 124 assigns times slots for each physical device. In this case, each physical device is assigned a time slot regardless of whether that physical device is in use or not.
The DSP control software 102 in microprocessor 100 determines which function each of the channels in each DSP will operate to process. For example, the DSP 104 can be running voice compression/decompression according to G.729A on channel 1, fax relaying on channels 2 and 3, and a V.90 modem on channel 4. The processed information is passed to and from an Internet Protocol (IP) network 132. The IP network 132 may be a WAN or LAN type of IP network.
An advantage of this approach is that any channel within a DSP can be executing any of the configured algorithms. The disadvantage of this approach in DSP utilization is that it is expensive to have all of the algorithms available for use at all times on a large array of individual DSPs. This approach is also an inefficient use of both memory and power. The increased cost in terms of money, space, and power is a function of the product of the number of channels and the number of functions supported.
Therefore there is a need for a gateway that interfaces between traditional telephone equipment and a packet network, which processes and translates telephone network information to packets, and which does so in an efficient manner.